home *** CD-ROM | disk | FTP | other *** search
/ Amiga CD-Sensation: Golden Games / Amiga CD-Sensation - Ausgabe 2 - Golden Games (1996)(GTI - Schatztruhe)(DE)[!].iso / Adventurer's / ImpPro / Developer / ImpLib.h < prev    next >
C/C++ Source or Header  |  1995-06-05  |  3KB  |  101 lines

  1. // Defines
  2.  
  3. #define IMP_SCREEN_NAME   "IMP.SCREEN"
  4. #define IMPSHARE_NAME     "ImpShare"
  5. #define SNAPSHOT_FILE      "ImpPro:Data/ImpPro.snapshots"
  6.  
  7. // Data directories in ImpPro
  8.  
  9. #define SAVE_DIRECTORY    "ImpPro:Save"
  10. #define DATA_DIRECTORY      "ImpPro:Data"
  11. #define MODULES_DIRECTORY "ImpPro:Modules"
  12. #define SCRIPT_DIRECTORY  "ImpPro:Scripts"
  13.  
  14. // Shared library stuff
  15.  
  16. #define IMPLIBNAME        "imppro.library"
  17. #define IMPLIBVERSION        5
  18.  
  19. // Module IDs used for inter-module communication
  20.  
  21. #define MOD_LAUNCHER    MAKE_ID('L', 'A', 'U', 'N')
  22. #define MOD_DICE    MAKE_ID('D', 'I', 'C', 'E')
  23. #define MOD_CLOCK    MAKE_ID('C', 'L', 'O', 'C')
  24. #define MOD_ENCOUNTER    MAKE_ID('E', 'N', 'C', 'O')
  25. #define MOD_CHARACTER    MAKE_ID('C', 'H', 'A', 'R')
  26. #define MOD_DUNGEON    MAKE_ID('D', 'U', 'N', 'G')
  27. #define MOD_GAMELOG    MAKE_ID('G', 'L', 'O', 'G')
  28. #define MOD_NAME    MAKE_ID('N', 'A', 'M', 'E')
  29. #define MOD_CITY    MAKE_ID('C', 'I', 'T', 'Y')
  30. #define MOD_TREASURE    MAKE_ID('T', 'R', 'E', 'A')
  31. #define MOD_HORSE    MAKE_ID('H', 'O', 'R', 'S')
  32.  
  33. // Timestruct
  34.  
  35. #define TS_PARTS       6
  36.  
  37. #define TS_DAYS        0
  38. #define TS_HOURS       1
  39. #define TS_TURNS       2
  40. #define TS_ROUNDS      3
  41. #define TS_SEGS        4
  42. #define TS_SECS        5
  43.  
  44. struct TimeStruct {
  45.         int raw;
  46.         int value[TS_PARTS];
  47. };
  48.  
  49. // ImpPro shared semaphore, allocated by launcher on startup.  WILL GROW!
  50.  
  51. struct ImpShare {
  52.         struct SignalSemaphore    is_Semaphore;
  53.         int            is_RawTime;
  54.     int            is_PartyXP;
  55. };
  56.  
  57. // Snapshot structure used by all module to snapshot window positions to disk
  58.  
  59. struct ImpSnapshot {
  60.     ULONG            is_ID;
  61.     struct IBox        is_Bounds;
  62. };
  63.  
  64. // Things for Game Log's message port
  65.  
  66. #define LOG_MESSAGE_PORT    "ImpLogPort"    // Soon this will be only the base name
  67. #define LOG_MESSAGE_ID        100L
  68.  
  69. struct LogMessage {
  70.     struct Message   lg_Msg;
  71.     UBYTE         *lg_Event;
  72.     ULONG         lg_ModuleID;  /* Added in version 5 of imppro.library */
  73. };
  74.  
  75. // M A C R O S
  76.  
  77. #define DisableGadget(win, gad) SetGadgetAttrs((struct Gadget *)gad, win, NULL, GA_Disabled, TRUE, TAG_END)
  78. #define EnableGadget(win, gad) SetGadgetAttrs((struct Gadget *)gad, win, NULL, GA_Disabled, FALSE, TAG_END)
  79.  
  80. // Prototypes for imppro.library
  81.  
  82. void     impSeedRand(long);
  83. int      impRand(int);
  84. int      impInterpretAndRoll(STRPTR);
  85. int      impComputeDHTRSS(struct TimeStruct *);
  86. int    impSetGameTimeRaw(int);
  87. int      impGetGameTimeRaw(void);
  88. int      impSetPartyXP(int);
  89. int      impGetPartyXP(void);
  90. BOOL     impLogEvent(STRPTR, ULONG);
  91. BOOL     impReadSnapshot(struct ImpSnapshot *);
  92. BOOL     impWriteSnapshot(struct ImpSnapshot *);
  93. BOOL     impARexxSelector(STRPTR);
  94. BOOL     impLaunchCommand(STRPTR);
  95. BOOL    impLaunchCommandWait(STRPTR);
  96. BOOL    impReturnStrSTEM(struct RexxMsg *rxm, STRPTR basename, ULONG numvars, UBYTE **varnames, UBYTE **varvalues);
  97. BOOL    impReturnNumSTEM(struct RexxMsg *rxm, STRPTR basename, ULONG numvars, UBYTE **varvalues);
  98. BOOL    impGotoFileLabel(BPTR fp, STRPTR label);
  99. BOOL    impDisplayText(STRPTR);
  100. BOOL    impDisplayPicture(STRPTR);
  101.